package org.devocean.groupbuying.service;

import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

import org.devocean.groupbuying.domain.Product;

public interface ProductService {
	
	Product getProductById(Integer id);
	
	Product getProductByArticleLocalization(Integer articleLocalizationID);

	Product addOrUpdateProduct(Product product);

	void removeProduct(Integer id);

	long countProducts();

	List<Product> getAllProducts();
	
	List<Product> getProductsEntries(int start,int size);

	Product getProductByArticleID(Integer articleID);

	Product getProductByLang(Integer localizationKey, String localizationRequest);
	
	Product getProductByProductID(Integer productID,
			String localizationRequest);
	Map<String, Object> search(String searchText,
			ConcurrentHashMap<String, Object> concurrentHashMap);

}
